home *** CD-ROM | disk | FTP | other *** search
- # Perforce completion by Frank Cusack <frank@google.com>
-
- have p4 &&
- _p4()
- {
- local cur prev preprev p4commands p4filetypes
-
- COMPREPLY=()
- _get_comp_words_by_ref cur prev preprev
-
- # rename isn't really a command
- p4commands="$( p4 help commands | awk 'NF>3 {print $1}' )"
- p4filetypes="ctext cxtext ktext kxtext ltext tempobj ubinary \
- uresource uxbinary xbinary xltext xtempobj xtext \
- text binary resource"
-
- if [ $COMP_CWORD -eq 1 ]; then
- COMPREPLY=( $( compgen -W "$p4commands" -- "$cur" ) )
- elif [ $COMP_CWORD -eq 2 ]; then
- case $prev in
- help)
- COMPREPLY=( $( compgen -W "simple commands \
- environment filetypes jobview revisions \
- usage views $p4commands" -- "$cur" ) )
- ;;
- admin)
- COMPREPLY=( $( compgen -W "checkpoint stop" -- "$cur" ) )
- ;;
- *)
- ;;
- esac
- elif [ $COMP_CWORD -gt 2 ]; then
- case $prev in
- -t)
- case $preprev in
- add|edit|reopen)
- COMPREPLY=( $( compgen -W "$p4filetypes" -- "$cur") )
- ;;
- *)
- ;;
- esac
- ;;
- *)
- ;;
- esac
- fi
-
- return 0
- } &&
- complete -F _p4 -o default p4 g4
-
- # Local variables:
- # mode: shell-script
- # sh-basic-offset: 4
- # sh-indent-comment: t
- # indent-tabs-mode: nil
- # End:
- # ex: ts=4 sw=4 et filetype=sh
-